This invention relates to programmable logic devices, and more particularly, to taking into account manufacturing variations to minimize programmable logic device performance variations.
Programmable logic devices are a type of integrated circuit that can be programmed by a user to implement a desired custom logic function. In a typical scenario, a logic designer uses computer-aided design (CAD) tools to design a custom logic circuit. The CAD tools help the designer implement the custom logic circuit using available programmable logic device resources. The CAD tools generate configuration data. When the configuration data is loaded into a programmable logic device, the programmable logic device performs the functions of the custom logic circuit.
Due to variations in manufacturing processes, individual programmable logic devices of the same type do not perform identically. For example, some devices may operate reliably at faster speeds than other devices. Sometimes manufacturers sell parts that perform differently as different parts. With this type of approach, fast parts might, as an example, have a different model designation than slow parts and might be sold at a premium price relative to slow parts.
There is a practical limit to this type of product differentiation for complex integrated circuits. There are many possible manufacturing variations that may affect circuit performance, but not each variation warrants the introduction of an entirely new product. As a result, there is a range of acceptable performance variations for each product. To ensure adequate manufacturing yield, the range of acceptable performance variations that is tolerated for a product is often sizable.
Programmable logic device manufacturers publish performance specifications for their products to make logic designers aware of what type of performance variations are to be expected for each product. A logic designer can consult these specifications when designing a custom circuit to ensure that the circuit will perform satisfactorily when implemented in the programmable logic device.
The size of the performance variations listed in a manufacturer's published performance specifications serve as a figure of merit. Devices with narrow tolerances are more valuable to logic designers than devices with wide tolerances, because narrow tolerances allow circuit designers to design circuits aggressively. When designing circuits for programmable logic devices with poor tolerances, a logic designer is forced to be conservative, which adversely affects performance.
What is therefore needed is a way to effectively compensate programmable logic devices for performance variations arising from manufacturing variations.